/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package org.opensource.jdom.taggen.html.tag;

/**
 *
 * A drop-down list form element. option elements within the select element
 * define each list item.
 *
 * <h2>Example</h2> <pre><code class="html">
 *<strong>&lt;select name="dogs"&gt;</strong>
 *	&lt;option&gt;Domestic Dog&lt;/option&gt;
 *	&lt;option&gt;Arctic Fox&lt;/option&gt;
 *	&lt;option&gt;Maned Wolf&lt;/option&gt;
 *	&lt;option&gt;Grey Wolf&lt;/option&gt;
 *	&lt;option&gt;Red Fox&lt;/option&gt;
 *	&lt;option&gt;Fennec&lt;/option&gt;
 *<strong>&lt;/select&gt;</strong>
 *</code></pre>
 *
 * @see Option
 * @see Optgroup
 * @see Form
 * @see Input
 * @see Textarea
 * @author sergio.valdez
 */
public class Select {

    /**
     * can be used so that the value of the selected option element can be
     * processed.
     */
    private String cssName;
    /**
     * can be used to specify how many items of the list are displayed at any
     * time. The default is 1.
     */
    private String size;
    /**
     * can be used to specify that more than one item from the list can be
     * selected. This must be used in the format multiple="multiple".
     */
    private boolean multiple;
    /**
     * can be used to disable an element. It must be used in the format
     * disabled="disabled".
     */
    private boolean disabled;
    /**
     * can be used to specify where the element appears in the tab order of the
     * page.
     */
    private String tabindex;

    /**
     * can be used so that the value of the selected option element can be
     * processed.
     * @return the cssName
     */
    public String getCssName() {
        return cssName;
    }

    /**
     * can be used so that the value of the selected option element can be
     * processed.
     * @param cssName the cssName to set
     */
    public void setCssName(String cssName) {
        this.cssName = cssName;
    }

    /**
     * can be used to specify how many items of the list are displayed at any
     * time. The default is 1.
     * @return the size
     */
    public String getSize() {
        return size;
    }

    /**
     * can be used to specify how many items of the list are displayed at any
     * time. The default is 1.
     * @param size the size to set
     */
    public void setSize(String size) {
        this.size = size;
    }

    /**
     * can be used to specify that more than one item from the list can be
     * selected. This must be used in the format multiple="multiple".
     * @return the multiple
     */
    public boolean isMultiple() {
        return multiple;
    }

    /**
     * can be used to specify that more than one item from the list can be
     * selected. This must be used in the format multiple="multiple".
     * @param multiple the multiple to set
     */
    public void setMultiple(boolean multiple) {
        this.multiple = multiple;
    }

    /**
     * can be used to disable an element. It must be used in the format
     * disabled="disabled".
     * @return the disabled
     */
    public boolean isDisabled() {
        return disabled;
    }

    /**
     * can be used to disable an element. It must be used in the format
     * disabled="disabled".
     * @param disabled the disabled to set
     */
    public void setDisabled(boolean disabled) {
        this.disabled = disabled;
    }

    /**
     * can be used to specify where the element appears in the tab order of the
     * page.
     * @return the tabindex
     */
    public String getTabindex() {
        return tabindex;
    }

    /**
     * can be used to specify where the element appears in the tab order of the
     * page.
     * @param tabindex the tabindex to set
     */
    public void setTabindex(String tabindex) {
        this.tabindex = tabindex;
    }

    
}
